'''
QLabel 控件
setAlignment():设置文本对其方式
setIndent()：设置文本缩进
text()：获取文本内容
setBUddy()：设置伙伴关系
setText():设置文本内容
selectedText()：返回选择的字符
setWordWrap()：设置是否运行换行

QLabel常用的信号(事件)：
1.当鼠标划过Qlabel控件时触发：linkHovered
2.当鼠标单机QLabel控件时触发：linkActivated

'''
import sys
from PyQt5.QtWidgets import QVBoxLayout,QMainWindow,QApplication,QLabel,QWidget
from PyQt5.QtGui import QPixmap,QPalette  #调色板
from PyQt5.QtCore import Qt

class QLabeldemo(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        label1 = QLabel(self)
        label2 = QLabel(self)
        label3 = QLabel(self)
        label4 = QLabel(self)

        label1.setText('<font color=yellow>这是一个文本标签.</font>')
        label1.setAutoFillBackground(True)   #设置自动填充背景
        palette=QPalette()
        palette.setColor(QPalette.Window,Qt.blue)
        label1.setPalette(palette)   #使用调色板
        label1.setAlignment(Qt.AlignCenter)  #设置居中对其

        label2.setText("<a href='#'>欢迎使用Python GUI程序</a>")

        label3.setAlignment(Qt.AlignCenter)
        label3.setToolTip('这是一个图片标签')
#        label3.setPixmap(QPixmap('./images/python.jpg'))

        label4.setOpenExternalLinks(True)  #触发打开页面，但是与点击触发事件只能触发一个
        label4.setText("<a href='https://item.jd.com/12417265.html'>感谢关注《Python从菜鸟到高手》")  #跳转网站
        label4.setAlignment(Qt.AlignRight)
        label4.setToolTip('这是一个超链接')

        vbox=QVBoxLayout()
        vbox.addWidget(label1)
        vbox.addWidget(label2)
        vbox.addWidget(label3)
        vbox.addWidget(label4)

        #绑定
        label2.linkHovered.connect(self.linkHovered)
        label4.linkActivated.connect(self.linkClicked)

        self.setLayout(vbox)
        self.setWindowTitle('QLabel控件演示')

    def linkHovered(self):
        print('当鼠标滑过label2标签时，触发事件')

    def linkClicked(self):
        print('当鼠标单机label4标签时，触发事件')

if __name__=='__main__':
    app=QApplication(sys.argv)
    main=QLabeldemo()
    main.show()
    sys.exit(app.exec_())